﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using Class_BUS;
using Class_DTO;
using System.Text;
using System.Windows.Forms;

namespace Project_QuangCaoABC
{
    public partial class frmHopDongQuangCao : Form
    {
        public frmHopDongQuangCao()
        {
            InitializeComponent();
        }
        bool them = false;
        bool update = false;
        private void frmHopDongQuangCao_Load(object sender, EventArgs e)
        {
            dGW_DSHD.ReadOnly = true;          
            txtMaHD.ReadOnly = true;
            txtTenHD.ReadOnly = true;
            //txtTinhTien.ReadOnly = true;

            them = false;
            update = false;

            DataTable dt = new DataTable();
            dt = Class_BUS.KhachHangBus.LoadDS_KhachHang();
            cmbKhachHang.DataSource = dt;
            cmbKhachHang.DisplayMember = "TenKhachHang";
            cmbKhachHang.ValueMember = "MaKhachHang";

            DataTable dtnv = new DataTable();
            dtnv = Class_BUS.NhanVienBUS.LoadDS_NhanVien();
            cmbNhanVien.DataSource = dtnv;
            cmbNhanVien.DisplayMember = "TenNhanVien";
            cmbNhanVien.ValueMember = "MaNhanVien";

            DataTable dtqc = new DataTable();
            dtqc = Class_BUS.ThongTinQCBUS.LoadDS_QuangCao();
            cmbTenQuangCao.DataSource = dtqc;
            cmbTenQuangCao.DisplayMember = "TenQuangCao";
            cmbTenQuangCao.ValueMember = "MaQuangCao";

            HienThiDS_HopDong();

        }
        public void HienThiDS_HopDong()
        {
            dGW_DSHD.DataSource = HopDongBUS.LoadDS_HopDong();

        }
        private void xoatext()
        {
            txtMaHD.Text = "";
            txtTenHD.Text = "";
            //txtTinhTien.Text = "";
            cmbKhachHang.Text = "";
            cmbTenQuangCao.Text = "";
            cmbNhanVien.Text = "";
            
           

        }
        private void btnThem_Click(object sender, EventArgs e)
        {
            xoatext();
           
            txtTenHD.ReadOnly = false;
            them = true;

            btnLuu.Enabled = true;
            btnSua.Enabled = false;
            btnXoa.Enabled = false;
            btnThem.Enabled = false;
        }

        private void btnSua_Click(object sender, EventArgs e)
        {
            btnLuu.Enabled = true;
            if (dGW_DSHD.SelectedRows.Count <= 0)
            {
                MessageBox.Show("Chưa tin quảng cáo", "Thông báo!", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            else
            {
                txtMaHD.ReadOnly = false;
                txtTenHD.ReadOnly = false;

                btnThem.Enabled = false;
                btnXoa.Enabled = false;
                btnSua.Enabled = false;

                update = true;
            }
        }

        private void btnBoQua_Click(object sender, EventArgs e)
        {
            xoatext();
            btnThem.Enabled = true;
            btnSua.Enabled = true;
            btnXoa.Enabled = true;
            btnLuu.Enabled = true;

            txtMaHD.ReadOnly = true;
            txtTenHD.ReadOnly = true;
        }
        Class_DAO.HopDongDAO thaotac = new Class_DAO.HopDongDAO();

        private void btnLuu_Click(object sender, EventArgs e)
        {
            btnLuu.Enabled = false;
            btnSua.Enabled = true;
            btnThem.Enabled = true;
            btnXoa.Enabled = true;
            try
            {
                if (them) // them
                {
                    string tenhd = txtTenHD.Text;                   
                    DateTime ngayky = dTP_NgayKy.Value;                   
                    int makh = Convert.ToInt32(cmbKhachHang.SelectedValue.ToString());
                    int manv = Convert.ToInt32(cmbNhanVien.SelectedValue.ToString());
                    int mqc = Convert.ToInt32(cmbTenQuangCao.SelectedValue.ToString());
                    //double  tongtien = Convert.ToDouble(txtTinhTien.Text);
                    HopDongBUS hdBUS = new HopDongBUS();
                    HopDongDTO hdDTO = new HopDongDTO(tenhd, ngayky, makh, manv, mqc );

                    Class_BUS.HopDongBUS.ThemHopDong_BUS(hdDTO);
                    HienThiDS_HopDong();
                    them = false;
                    MessageBox.Show("Thêm thành công", "Thông báo!", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    return;

                }
                if (update)// sua
                {
                    thaotac.sua(int.Parse(txtMaHD.Text), txtTenHD.Text, Convert.ToDateTime(dTP_NgayKy.Value), Convert.ToInt32(cmbKhachHang.SelectedValue.ToString()), Convert.ToInt32(cmbNhanVien.SelectedValue.ToString()), Convert.ToInt32(cmbTenQuangCao.SelectedValue.ToString()));
                    HienThiDS_HopDong();
                    update = false;
                    MessageBox.Show("Sửa Thành Công.", "Thông Báo!", MessageBoxButtons.OK, MessageBoxIcon.Information);
                }

            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Thông báo!");
                return;
            }
        }

        private void btnXoa_Click(object sender, EventArgs e)
        {
            //btnXoa.Enabled = false;
            if (dGW_DSHD.SelectedRows.Count <= 0)
            {
                MessageBox.Show("Chưa chọn nhân viên", "Thông báo!", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            else
            {
                try
                {
                    DialogResult a = MessageBox.Show("Bạn Muốn Xóa Thông Tin Về Khách Hàng Này?", "Cảnh Báo", MessageBoxButtons.YesNo, MessageBoxIcon.Warning);
                    if (a == DialogResult.Yes)
                    {
                        thaotac.xoa(int.Parse(txtMaHD.Text));
                        HienThiDS_HopDong();
                        MessageBox.Show("Xóa Thành Công", "Thông Báo", MessageBoxButtons.OK, MessageBoxIcon.Information);
                        xoatext();
                    }
                }
                catch
                {
                    MessageBox.Show("Thao Tác Thất Bại.Vui Lòng Thử Lại", "Thông bao", MessageBoxButtons.YesNo, MessageBoxIcon.Warning);
                }
            }
        }

        private void btnThoat_Click(object sender, EventArgs e)
        {
            this.Close();
        }

        private void btnTimKiem_HD_Click(object sender, EventArgs e)
        {
            if (txtTimHD.Text.Trim() == string.Empty)
            {
                MessageBox.Show("Bạn chưa nhập thông tin", "Thông báo");
            }
            else
            {
                dGW_DSHD.DataSource = HopDongBUS.getHopDong_theoten(txtTimHD.Text);
            }
        }

        private void dGW_DSHD_SelectionChanged(object sender, EventArgs e)
        {
            if (dGW_DSHD.SelectedRows.Count > 0)
            {
                txtMaHD.Text = dGW_DSHD.SelectedRows[0].Cells[3].Value.ToString();               
                txtTenHD.Text = dGW_DSHD.SelectedRows[0].Cells[4].Value.ToString();
                dTP_NgayKy.Text  = dGW_DSHD.SelectedRows[0].Cells[5].Value.ToString();
                cmbKhachHang.SelectedText = dGW_DSHD.SelectedRows[0].Cells[1].Value.ToString();
                cmbNhanVien.SelectedText = dGW_DSHD.SelectedRows[0].Cells[2].Value.ToString();
                cmbTenQuangCao.SelectedText = dGW_DSHD.SelectedRows[0].Cells[0].Value.ToString();

            }
        }

        private void btnTinhTien_Click(object sender, EventArgs e)
        {
            
        }

        private void btnInHD_Click(object sender, EventArgs e)
        {
            frmReport frHD = new frmReport();
            frHD.Show();
        }

        

        
    }
}
